popover: Unset the grab when the popover loses its parent
authorCarlos Garnacho <carlosg@gnome.org>
Tue, 3 Feb 2015 11:03:22 +0000 (12:03 +0100)
committerCarlos Garnacho <carlosg@gnome.org>
Thu, 5 Feb 2015 14:09:51 +0000 (15:09 +0100)
This ensures the grab and signal handlers are removed if the parent goes
NULL.

gtk/gtkpopover.c

index c6afcfa29d81e1576e1f13df4f5526e50dad808f..4d8b175d5210a960ee02ceb51db3c3c9c4c8ae0c 100644 (file)
@@ -1446,6 +1446,9 @@ _gtk_popover_parent_hierarchy_changed (GtkWidget  *widget,
 
   g_object_ref (popover);
 
+  if (gtk_widget_has_grab (GTK_WIDGET (popover)))
+    gtk_popover_apply_modality (popover, FALSE);
+
   if (priv->window)
     _gtk_window_remove_popover (priv->window, GTK_WIDGET (popover));